Listing All Plane Graphs

نویسندگان

  • Katsuhisa Yamanaka
  • Shin-Ichi Nakano
چکیده

In this paper we give a simple algorithm to generate all connected rooted plane graphs with at most m edges. A “rooted” plane graph is a plane graph with one designated (directed) edge on the outer face. The algorithm uses O(m) space and generates such graphs in O(1) time per graph on average without duplications. The algorithm does not output the entire graph but the difference from the previous graph. By modifying the algorithm we can generate all connected (non-rooted) plane graphs with at most m edges in O(m) time per graph. Submitted: January 2008 Reviewed: June 2008 Revised: July 2008 Accepted: November 2008 Final: December 2008 Published: February 2009 Article type: Regular Paper Communicated by: M. S. Rahman E-mail addresses: [email protected] (Katsuhisa Yamanaka) [email protected] (Shin-ichi Nakano) 6 K. Yamanaka and S. Nakano Listing All Plane Graphs Generating all graphs with some property without duplications has many applications, including unbiased statistical analysis [9]. A lot of algorithms to solve these problems are known such as [1, 2, 8, 9, 10, 15]. See textbooks [5, 6, 7, 13, 14]. In this paper we wish to generate all connected “rooted” plane graphs, which will be defined precisely in Section 2, with at most m edges. Such graphs play an important role in many algorithms, including graph drawing algorithms such as [3, 4, 12]. Using our generation algorithm one can test an implementation of a plane graph drawing algorithm. Our algorithm constructs the complete list of rooted plane graphs with at most m edges. To solve these all-graph-generating problems some types of algorithms are known. Classical method algorithms [5, p.57] first generate all the graphs with a given property allowing duplications, but output only if the graph has not been output yet. Thus this method requires quite a huge space to store a list of graphs that have already been output. Furthermore, checking whether each graph has already been output requires a lot of time. Orderly method algorithms [5, p.57] need not store the list, since they output a graph only if it is a “canonical” representative of each isomorphism class. Reverse search method algorithms [1] also need not store the list. The idea is to implicitly define a connected graph H such that the vertices of H correspond to the graphs with the given property, and the edges of H correspond to some relation between the graphs. By traversing an implicitly defined spanning tree of H, one can find all the vertices of H, which correspond to all the graphs with the given property without duplication. The main idea of our algorithms is that for some problems (biconnected triangulations [8], and triconnected triangulations [10]) we can define a tree (not a general graph) as the graph H of the reverse search method. Thus our algorithms do not need to find a spanning tree of H, since H itself is a tree. With some other ideas we give the following two simple but efficient algorithms. Our first algorithm generates all simple connected rooted plane graphs with at most m (m > 0) edges. Simple means there is neither self loops nor multiple edges. A rooted plane graph means a plane graph with one designated “root” edge on the outer face. Its precise definition is given in the next section. For instance there are nine simple connected rooted plane graphs with at most three edges, as shown in Figure 1(a). The root edges are depicted by thick grey lines. However, there are only five simple connected (non-rooted) plane graphs with at most three edges. See Figure 1(b). The algorithm uses O(m) space and runs in O(g(m)) time, where g(m) is the number of nonisomorphic connected rooted plane graphs with at most m edges. The algorithm generates each graph in O(1) time on average without duplications. The algorithm does not output the entire graph but the difference from the previous graph. By modifying the algorithm we can generate all connected (non-rooted) plane graphs with at most m edges in O(m) time per graph. The rest of the paper is organized as follows. Section 2 gives some definitions. Section 3 shows a tree structure among connected rooted plane graphs. Section JGAA, 13(1) 5–18 (2009) 7

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Listing Triconnected Rooted Plane Graphs

A plane graph is a drawing of a planar graph in the plane such that no two edges cross each other. A rooted plane graph has a designated outer vertex. For given positive integers n ≥ 1 and g ≥ 3, let G3(n, g) denote the set of all triconnected rooted plane graphs with exactly n vertices such that the size of each inner face is at most g. In this paper, we give an algorithm that enumerates all p...

متن کامل

Efficient algorithms for listing combinatorial structures

This thesis studies the problem of designing efficient algorithms for listing combinatorial structures. The main notion of efficiency that we use is due to Johnson, Yannakakis, and Papadimitriou. It is called polynomial delay. A listing algorithm is said to have delay d if and only if it satisfies the following conditions whenever it is run with any input p: It executes at most d(p) machine ins...

متن کامل

New algorithms for $k$-degenerate graphs

A graph is k-degenerate if any induced subgraph has a vertex of degree at most k. In this paper we prove new algorithms finding cliques and similar structures in these graphs. We design linear time Fixed-Parameter Tractable algorithms for induced and non induced bicliques. We prove an algorithm listing all maximal bicliques in time O(k(n−k)2), improving the result of [D. Eppstein, Arboricity an...

متن کامل

8 F eb 2 01 2 Cliques in Odd - Minor - Free Graphs ∗

This paper is about: (1) bounds on the number of cliques in a graph in a particular class, and (2) algorithms for listing all cliques in a graph. We present a simple algorithm that lists all cliques in an n-vertex graph in O(n) time per clique. For O(1)-degenerate graphs, such as graphs excluding a fixed minor, we describe a O(n) time algorithm for listing all cliques. We prove that graphs excl...

متن کامل

Cliques in Odd-Minor-Free Graphs

This paper is about: (1) bounds on the number of cliques in a graph in a particular class, and (2) algorithms for listing all cliques in a graph. We present a simple algorithm that lists all cliques in an n-vertex graph in O(n) time per clique. For O(1)-degenerate graphs, such as graphs excluding a fixed minor, we describe a O(n) time algorithm for listing all cliques. We prove that graphs excl...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • J. Graph Algorithms Appl.

دوره 13  شماره 

صفحات  -

تاریخ انتشار 2008